package cn.com.nes.site.entity.vo.workOrder;

import cn.com.nes.site.entity.vo.BaseVO;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * 工单所属条件查询参数
 *
 * @author lux
 * @date 2018-11-07 20:10
 */
@Data
public class WorkOrderListVo extends BaseVO {
    /**
     * 企业id
     */
    private Long companyId;
    /**
     * 用户id
     */
    private Long userId;

    /**
     * 用户账号
     */
    private String account;

    /**
     * 房屋id
     */
    private Long houseId;

    /**
     * 创建人姓名
     */
    private String createUserName;
    /**
     * 处理人姓名
     */
    private String handelUserName;
    /**
     * 联系人员姓名
     */
    private String customerName;
    /**
     * 任务类型id
     */
    private Long workTypeId;
    /**
     * 紧急程度id
     */
    private Integer emergencyDegreeId;
    /**
     * 处理状态
     */
    private Integer workOrderStatus;
    /**
     * 创建时间 开始
     */
    private Long createStartTime;
    /**
     * 创建时间 结束
     */
    private Long createEndTime;
    /**
     * 完成时间 开始
     */
    private Long completeStartTime;
    /**
     * 完成时间 结束
     */
    private Long completeEndTime;
    /**
     * 当前页数
     */
    private Integer page;
    /**
     * 每页显示个数
     */
    private Integer size;
    /**
     * 类别（1:我创建，2:待处理，0:全部,3:待支援,4:处理中,5:待回访,6:已完成,7:待我处理的工单,8:我处理的全部工单）
     */
    @NotNull(message = "type参数不能为空")
    private Integer type;

    /**
     * 工单编号
     */
    private Long workOrderId;
    /**
     *问题类型
     */
    private String problemType;
    /**
     *行政区划代码
     */
    private String xzqhdm;
    /**
     *工单来源 0 工单 1故障 2预警 3 12345热线 4 用户报修 5后台创建
     */
    private Integer workOrderSource;

    /**
     * 客户ID
     */
    private Long clientleId;

    /**
     * 电话
     */
    private String phone;

    /**
     * 工单地址
     */
    private String address;

    /**
     * 设备厂家id
     */
    private String equipmentCompanyId;

    private String[] xzqhdms;

    private Date warrantyStartDate;

    private Date warrantyEndDate;

    private String equipmentExtendCompanyId;

    /**
     * 是否过保
     */
    private Integer expired;

    private String ynfsdl;

    private String xzqhjb;

    private String xzqhsubStrA1;

    private String xzqhsubStrA2;

    private String tjType; // 当 query=02  01 总件数 02 政策咨询 03 故障维修 04 其它 |   当 query=01  01总数 02派单量 03 完成 04未处理

    private String startTime;

    private String endTime;

    private String order;

    private String queryType;//01，派单统计，02，工单统计

    private String qyXzqhjb;

    private String search;

    private String isHj;//是否合计，01是，02否

    private String workOrderType; //工单类型 01 12345工单  02 长效管护工单

    /**
     * 是否已接单
     */
    private Integer maintenanceStatus = null;

    /**
     * 审核状态
     */
    private Integer audited;

    /**
     * 故障现象代码
     */
    private String gzxxdm;

    /**
     * 故障分类代码
     */
    private String gzfldm;

    /**
     * 故障分类明细代码
     */
    private String gzflmxdm;

    /**
     * 工单类型， 1.维修工单 2.通用工单 3.咨询工单 4.安装工单
     */
    private Integer orderType;

    /**
     * 工单问题分类 字典表AppealCategory其中 01代表故障类、02代表售后服务类
     */
    private String appealCategory;

    /**
     * 工单问题分类细类   字典表WorkOrderEvaluation
     */
    private List<String> evaluation;

    /**
     * 催单次数
     */
    private Integer remindOrderCount;

    private String companyType;
}
